package com.typ.member.service;

import com.github.pagehelper.PageInfo;
import com.typ.member.common.model.PageRequest;
import com.typ.member.dao.model.MemberCardDto;
import com.typ.member.dao.model.MemberCardQueryDto;
import com.typ.member.dao.model.ProcessDto;

import java.math.BigDecimal;

/**
 * @author heran
 * @version 1.0, 2019-05-10 11:21
 */
public interface MemberCardService {
    void add(MemberCardDto memberCardDto);

    void update(MemberCardDto memberCardDto);

    void delete(Long id);

    PageInfo<MemberCardDto> search(MemberCardQueryDto memberCardQueryDto, PageRequest pageRequest);

    /**
     * 余额消费
     *
     * @param processDto
     */
    void doConsume(ProcessDto processDto);

    /**
     * 余额充值
     *
     * @param processDto
     */
    void doRecharge(ProcessDto processDto);

    /**
     * 积分消费
     *
     * @param processDto
     */
    void doPointsConsume(ProcessDto processDto);
}
